package cn.eonshine.cuba.inf.modular.basic.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

/**
 * <p>
 * train tanker（铁路罐车表）
 * </p>
 *
 * @author Alan
 * @since 2018-07-28
 */
@TableName("inf_train_tanker")
public class TrainTanker extends Model<TrainTanker> {

    private static final long serialVersionUID = 1L;

    @TableField(exist = false)
    private String id;
    /**
     * Traffic conveyance tank  basice information primary key 仓位ID
             
     */
    private String code;
    /**
     * sys_office 所属公司
     */
    @TableField("sys_org")
    private String sysOrg;
    /**
     * Whether to enable：0-no；1-yes
             是否启用：0-禁用；1-启用
     */
    private String enable;
    /**
     * start using time 启用时间
     */
    @TableField("start_day")
    private Date startDay;
    /**
     * end using time     停用时间
     */
    @TableField("end_day")
    private Date endDay;
    /**
     * operation number
             运营号
     */
    @TableField("operation_no")
    private String operationNo;
    /**
     * Round trip time（day）
     */
    @TableField("round_trip_time")
    private BigDecimal roundTripTime;
    /**
     * last capacity certification date
             罐容表更新日期
     */
    @TableField("last_capacity_certify_date")
    private Date lastCapacityCertifyDate;
    /**
     * Oil Product Class(I)：Light oil, heavy oil
             黑白油
     */
    @TableField("oil_type1")
    private String oilType1;
    /**
     * Group by origin: Iran, Russia, Canada
             按照产地分：伊朗、俄罗斯、加拿大
     */
    @TableField("wagon_type")
    private String wagonType;
    /**
     * wagon capacity
             罐车载重量
     */
    @TableField("wagon_capacity")
    private BigDecimal wagonCapacity;
    /**
     * creator
             创建者
     */
    @TableField("create_by")
    private String createBy;
    /**
     * Create time
             创建时间
     */
    @TableField("create_date")
    private Date createDate;
    /**
     * updater
             更新者
     */
    @TableField("update_by")
    private String updateBy;
    /**
     * Update time
             更新时间
     */
    @TableField("update_date")
    private Date updateDate;
    /**
     * Remarks information
             备注信息
     */
    private String remarks;
    
    /**
     * @Description: 数据更新状态： 1-古巴初始插入，0-LSMS已经拿到数据
     */
    @TableId
    @TableField("lsms_update")
    private Integer lsmsUpdate;
    
    /**
     * @Description: Data input datetime 数据接口发送时间
     */
    @TableField("data_input_datetime")
    private Date dataInputDatetime;


    /**  
	 * @Title:  getId <BR>  
	 * @Description: please write your description <BR>  
	 * @author: Alan
	 * @date:   2019-02-13 16:48:40
	 */
	public String getId() {
		return id;
	}

	/**
	 * @Title:  setId <BR>  
	 * @Description: please write your description <BR>  
	 * @param id the id to set <BR>
	 * @author: Alan
	 * @date:   2019-02-13 16:48:40
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**  
	 * @Title:  getCode <BR>  
	 * @Description: code <BR>  
	 * @author: Alan
	 * @date:   2019-02-13 16:26:55
	 */
	public String getCode() {
		return code;
	}

	/**
	 * @Title:  setCode <BR>  
	 * @Description: code <BR>  
	 * @param code the code to set <BR>
	 * @author: Alan
	 * @date:   2019-02-13 16:26:55
	 */
	public void setCode(String code) {
		this.code = code;
	}

	public String getSysOrg() {
        return sysOrg;
    }

    public void setSysOrg(String sysOrg) {
        this.sysOrg = sysOrg;
    }

    public String getEnable() {
        return enable;
    }

    public void setEnable(String enable) {
        this.enable = enable;
    }

    public Date getStartDay() {
        return startDay;
    }

    public void setStartDay(Date startDay) {
        this.startDay = startDay;
    }

    public Date getEndDay() {
        return endDay;
    }

    public void setEndDay(Date endDay) {
        this.endDay = endDay;
    }

    public String getOperationNo() {
        return operationNo;
    }

    public void setOperationNo(String operationNo) {
        this.operationNo = operationNo;
    }

    public BigDecimal getRoundTripTime() {
        return roundTripTime;
    }

    public void setRoundTripTime(BigDecimal roundTripTime) {
        this.roundTripTime = roundTripTime;
    }

    public Date getLastCapacityCertifyDate() {
        return lastCapacityCertifyDate;
    }

    public void setLastCapacityCertifyDate(Date lastCapacityCertifyDate) {
        this.lastCapacityCertifyDate = lastCapacityCertifyDate;
    }

    public String getOilType1() {
        return oilType1;
    }

    public void setOilType1(String oilType1) {
        this.oilType1 = oilType1;
    }

    public String getWagonType() {
        return wagonType;
    }

    public void setWagonType(String wagonType) {
        this.wagonType = wagonType;
    }

    public BigDecimal getWagonCapacity() {
        return wagonCapacity;
    }

    public void setWagonCapacity(BigDecimal wagonCapacity) {
        this.wagonCapacity = wagonCapacity;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

	public Integer getLsmsUpdate() {
		return lsmsUpdate;
	}

	public void setLsmsUpdate(Integer lsmsUpdate) {
		this.lsmsUpdate = lsmsUpdate;
	}
	
	public Date getDataInputDatetime() {
		return dataInputDatetime;
	}

	public void setDataInputDatetime(Date dataInputDatetime) {
		this.dataInputDatetime = dataInputDatetime;
	}

	@Override
    protected Serializable pkVal() {
        return this.code;
    }

    @Override
    public String toString() {
        return "TrainTanker{" +
        ", code=" + code +
        ", sysOrg=" + sysOrg +
        ", enable=" + enable +
        ", startDay=" + startDay +
        ", endDay=" + endDay +
        ", operationNo=" + operationNo +
        ", roundTripTime=" + roundTripTime +
        ", lastCapacityCertifyDate=" + lastCapacityCertifyDate +
        ", oilType1=" + oilType1 +
        ", wagonType=" + wagonType +
        ", wagonCapacity=" + wagonCapacity +
        ", createBy=" + createBy +
        ", createDate=" + createDate +
        ", updateBy=" + updateBy +
        ", updateDate=" + updateDate +
        ", remarks=" + remarks +
        "}";
    }
}
